package in.lib.handler.streams; import in.lib.Debug; import in.lib.handler.base.RobinResponseHandler; import java.util.ArrayList; import java.util.List; import lombok.Getter; import android.content.Context; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; public abstract class TrendingStreamResponseHandler extends RobinResponseHandler { @Getter private List<String> trending = new ArrayList<String>(); public TrendingStreamResponseHandler(Context c) { super(c); } @Override public void onSuccess() { JsonElement elements = getContent(); try { JsonArray tags = elements.getAsJsonObject().get("hashtags").getAsJsonArray(); int size = tags.size(); for (int index = 0; index < size; index++) { JsonObject tag = tags.get(index).getAsJsonObject(); trending.add(tag.get("term").getAsString()); } } catch (Exception e) { Debug.out(e); } onCallback(); } /** * Implement this callback and use {@link #getPosts()} to get the returned List of posts * For fragments, use onCallback to execute {@link RobinFragment.runWhenReady()} and pass <b>this</b> * Then override {@link #run()} to finish the adapter stuff. * * See also: {@link #getHasMore()}, {@link #getLastId()} */ public abstract void onCallback(); @Override public void onFinish() { } }